草庐IT

Python mysql 不提交

全部标签

git - 如何列出 Git 存储库中的目录以及每个目录条目的最新提交信息?

我想列出Git存储库中的目录以及每个目录条目的最新提交信息。类似于GitHub如何显示目录或viewvc如何在SVN/CVS存储库中显示目录。目前我是这样做的:使用gitls-treemaster获取目录条目并从输出中解析目录结构。然后对于每个目录条目,我都这样做:gitlog-n1master--filename并从中解析提交信息(我指定了一个特殊的格式字符串以使其更容易,但这与我的问题无关)。很明显这很慢,因为我必须为每个文件调用Git。有没有更快的方法来做到这一点?也许我可以执行一个命令来立即获取我需要的所有数据? 最佳答案

git - `git bisect` 或 `git log -S --all` 找不到 merge 提交所做的更改

我修复了一个文件,并将其提交到我的git存储库。一段时间后,我发现它退步了。我想知道在哪个提交中删除了修复程序,所以我尝试了gitbisect和gitlog--all-STERM,其中“TERM”是一个字符串由我的修复程序添加,并且在项目的其他任何地方都没有出现。我发现gitbisect归咎于一个不相关的提交,我发现gitlog--all-STERM只列出了我添加了TERM的提交,并且没有将任何提交列为已删除它,即使它不再位于“master”的文件中。经过一番手工查找,发现两个分支之间发生了mergecommit。一个分支有我的修复,一个没有。merge作者在没有我修复的情况下选择了分

git - `git bisect` 或 `git log -S --all` 找不到 merge 提交所做的更改

我修复了一个文件,并将其提交到我的git存储库。一段时间后,我发现它退步了。我想知道在哪个提交中删除了修复程序,所以我尝试了gitbisect和gitlog--all-STERM,其中“TERM”是一个字符串由我的修复程序添加,并且在项目的其他任何地方都没有出现。我发现gitbisect归咎于一个不相关的提交,我发现gitlog--all-STERM只列出了我添加了TERM的提交,并且没有将任何提交列为已删除它,即使它不再位于“master”的文件中。经过一番手工查找,发现两个分支之间发生了mergecommit。一个分支有我的修复,一个没有。merge作者在没有我修复的情况下选择了分

git - 我如何提交并推送到 GitHub 上其他人的存储库?

我已经在我的虚拟机(我运行的是Ubuntu13.10)上克隆了一个教授创建的存储库,我们应该创建个人文件夹。我创建了我的,但我无法终生提交并推送它以使其显示在GitHub上。我发誓我已经尝试了这里的所有答案,并且情况有所改善。例如,我最初的Git版本太旧,不允许https。我还在我的个人目录中创建了一个空白文件,因为我知道GitHub不存储空文件夹。我最初使用以下方法克隆了存储库:$gitclonegit://github.com/astrofoley/astr596.git然后使用gitconfig--globaluser.name"myusername"和gitconfig--gl

git - 我如何提交并推送到 GitHub 上其他人的存储库?

我已经在我的虚拟机(我运行的是Ubuntu13.10)上克隆了一个教授创建的存储库,我们应该创建个人文件夹。我创建了我的,但我无法终生提交并推送它以使其显示在GitHub上。我发誓我已经尝试了这里的所有答案,并且情况有所改善。例如,我最初的Git版本太旧,不允许https。我还在我的个人目录中创建了一个空白文件,因为我知道GitHub不存储空文件夹。我最初使用以下方法克隆了存储库:$gitclonegit://github.com/astrofoley/astr596.git然后使用gitconfig--globaluser.name"myusername"和gitconfig--gl

git - 更改已推送的 git 提交

这个问题在这里已经有了答案:Howtodeletecommitthatispushedtotheremoterepository?(3个答案)HowdoIundothemostrecentlocalcommitsinGit?(100个答案)HowdoIdeleteacommitfromabranch?(36个答案)关闭8年前。我在git中进行merge时不小心覆盖了另一个开发人员的更改。我知道如何undothelastcommit,也就是我的merge。我的问题是我已经将这些提交推送到我们的在线存储库中。因此,如果我回滚,再次merge我的merge(这次是他的修改)并尝试再次推送它,

git - 更改已推送的 git 提交

这个问题在这里已经有了答案:Howtodeletecommitthatispushedtotheremoterepository?(3个答案)HowdoIundothemostrecentlocalcommitsinGit?(100个答案)HowdoIdeleteacommitfromabranch?(36个答案)关闭8年前。我在git中进行merge时不小心覆盖了另一个开发人员的更改。我知道如何undothelastcommit,也就是我的merge。我的问题是我已经将这些提交推送到我们的在线存储库中。因此,如果我回滚,再次merge我的merge(这次是他的修改)并尝试再次推送它,

c# - 从 LibGit2Sharp 中的提交中获取修改/添加/删除的文件

我有这个方法,我从上次提交中获取文件:staticvoidGetFiles(Treet,Stringdir=""){foreach(TreeEntrytreeEntryint){if(treeEntry.TargetType==TreeEntryTargetType.Tree){Treetr=repo.Lookup(treeEntry.Target.Sha);GetFiles(tr,dir+"/"+treeEntry.Name);}else{stringcaminho=dir+"/"+treeEntry.Path;arquivos.Add(caminho);}}return;}我看了t

c# - 从 LibGit2Sharp 中的提交中获取修改/添加/删除的文件

我有这个方法,我从上次提交中获取文件:staticvoidGetFiles(Treet,Stringdir=""){foreach(TreeEntrytreeEntryint){if(treeEntry.TargetType==TreeEntryTargetType.Tree){Treetr=repo.Lookup(treeEntry.Target.Sha);GetFiles(tr,dir+"/"+treeEntry.Name);}else{stringcaminho=dir+"/"+treeEntry.Path;arquivos.Add(caminho);}}return;}我看了t

git - git中带有子模块的浅克隆,如何使用指向提交而不是最新提交?

这个问题在这里已经有了答案:Howtoshallowcloneaspecificcommitwithdepth1?(4个答案)关闭5年前。我知道使用--depth选项和gitsubmoduleupdate可以有浅层子模块。但是,如果我运行gitsubmoduleupdate--init--recursive--depth1在我有几个子模块的项目中,我得到一个fatal:referenceisnotatree。所以我再次尝试了gitsubmoduleupdate--init--recursive--depth100工作正常,但我想将深度保持在1。在我看来--depth1pull了子模块中